﻿-- =============================================
-- Tabelas da sede
-- =============================================


USE [ASIVeste]


if(OBJECT_ID('Product') is not null)
	drop table Product

if(OBJECT_ID('Supplier') is not null)
	drop table Supplier

--if(OBJECT_ID('Type') is not null)
	--drop table Type
	
--CREATE TABLE Type(
	--type varchar(20) primary key,
	--link varchar(200)
--)
	
CREATE TABLE Supplier(
	number int identity(1,1) primary key,
	name varchar(100),
	address varchar(200)
)


-- Tabela particionada verticalmente com os conjuntos de lojas.
-- Para a sede apenas interessa a seguinte informação:
--		Código
--		minStock
--		fornecedor (Para realizar encomendas)


-- Decidimos replicar o tipo e o stock, embora não fosse necessário para optimizar a 
-- realização e entrega de enconmendas

-- A garantia de replicação do stock, é garantida pela lógica de negócio.

CREATE TABLE Product(
	code int identity(1,1) primary key,
	minStock int check(minStock > 0),
	supplier int foreign key references Supplier(number),
	--type varchar(20) foreign key references Type(type),
	type varchar(20) check (type = 'Child' or type='Sports' or type='Woman' or type = 'Man'),
	stock int check (stock >= 0),
	ordered bit
)





